package com.tansuo365.test1.service.kucunservice;

import com.tansuo365.test1.bean.kucunbean.WuliaoKucunRiZhi;

import java.util.List;

public interface WuliaoKucunRiZhiService {

    /**
     * 根据物料名称或时间区间进行查询时,要将物料去重,sum(到货量),sum(出库量),sum(退库量),
     * 获取到时间段第一天的期初库存为整个返回的期初库存量
     * 获取到时间段最后一天的库存余量为该查询物料的库存余量
     *
     * @param wuliaoKucunRiZhi
     * @return
     */
    List<WuliaoKucunRiZhi> getKucunRiZhiSelective(WuliaoKucunRiZhi wuliaoKucunRiZhi);

    int deleteByPrimaryKey(Integer id);

    int insertSelective(WuliaoKucunRiZhi wuliaoKucunRiZhi);

    int insertButDeleteDaohuoShu(Integer[] ids); //到货单删除 库存清理 统计日志

    int insertButDeleteChukuShu(Integer[] ids); //出库单删除 库存清理

    /**
     * 破损单删除(-破损数量) 库存恢复
     * 维修单删除(变为已修复) 库存恢复 统计日志
     * @param ids
     * @param type
     * @return
     */
    int insertAndDeletePosunOrWeixiuShu(Integer[] ids, String type);

//    int deletePosunChangeposunshu()

    int insertAndDelDaohuoShu(Integer[] ids, String type); //维修单恢复(变为未修复) 库存删除 统计日志

    WuliaoKucunRiZhi selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(WuliaoKucunRiZhi wuliaoKucunRiZhi);

    int updateWuliaoRizhiJieyuShuliangByWuliaoName(String mingchengguige,String rukukufang);

    List<WuliaoKucunRiZhi> listKucunWithRiZhi(WuliaoKucunRiZhi wuliaoKucunRiZhi);

    //删除了退库单,使得原来的退库数量变为-数新增入wuliaokucunrizhibiao
    int insertButDeleteTuikuShu(Integer[] ids);
}
